package com.gitee.loyo.post;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.gitee.loyo.data.ConnectorStatusInfo;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * T/CEC 102.3-2016
 * 6.5 推送启动充电结果
 * 6.5.3 输入参数
 */
@Data
@Accessors(chain = true)
public class NotifyStartChargeResultPost implements Serializable {
    /**
     * 充电订单号
     */
    @JsonProperty("StartChargeSeq")
    private String startChargeSeq;
    /**
     * 充电订单状态
     */
    @JsonProperty("StartChargeSeqStat")
    private Integer startChargeSeqStat;
    /**
     * 充电设备接口编码
     */
    @JsonProperty("ConnectorID")
    private String connectorId;
    /**
     * 充电启动
     */
    @JsonProperty("StartTime")
    private String startTime;
    /**
     * 停止充电验证码（启动充电时收到的验证码，用于充电桩手动停止充电）
     */
    @JsonProperty("IdentCode")
    private String identCode;



    /**
     * 启动中
     * @return
     */
    public boolean isStarting(){
        return startChargeSeqStat != null && startChargeSeqStat.intValue() == 1;
    }

    /**
     * 充电中
     * @return
     */
    public boolean isCharging(){
        return startChargeSeqStat != null && startChargeSeqStat.intValue() == 2;
    }

    /**
     * 停止中
     * @return
     */
    public boolean isStopping(){
        return startChargeSeqStat != null && startChargeSeqStat.intValue() == 3;
    }

    /**
     * 已结束
     * @return
     */
    public boolean isFinished(){
        return startChargeSeqStat != null && startChargeSeqStat.intValue() == 4;
    }
}
